//导入验证 token 的函数
const { verifyToken } = require("../utils/token");
//声明中间件函数
module.exports = async (req, res, next) => {
  //检测请求头是否包含 token, 并且检测 token 是否合法
  if (!req.headers.token) {
    res.json({
      msg: "token 缺失",
      data: null,
      code: "1008",
    });
  } else {
    try {
      //如果存在 token
      await verifyToken(req.headers.token);
      //如果验证通过
      next();
    } catch (e) {
      res.json({
        msg: "token 失效",
        data: null,
        code: "1009",
      });
    }
  }
};
